Workflow of inflow performance relationship for a reservoir using machine learning technique

ABSTRACT

A machine learning model is trained to facilitate determination of transient inflow performance relationship for a reservoir. A type reservoir model for the reservoir is developed and run multiple times with different input parameters to generate multiple production simulations for the reservoir. The input parameters and the results of the multiple production simulations for the reservoir are used to train a machine learning model. The trained machine learning model facilitates determination of transient inflow performance relationship for the reservoir by providing time-series prediction of average pressure, production rate, and absolute open flow of the reservoir.

FIELD

The present disclosure relates generally to the field of determining inflow performance relationship for a reservoir.

BACKGROUND

Inflow performance relationship is a critical performance indicator for a reservoir and may be needed for well performance evaluation and/or production optimization. Accurately determining the inflow performance relationship, such as inflow performance relationship that changes with time, may be costly, in terms of time and processing resources.

SUMMARY

This disclosure relates to determining inflow performance relationship for a reservoir. Type reservoir model information and/or other information may be obtained. The type reservoir model information may define a type reservoir model for the reservoir. Multiple production simulations for the reservoir may be generated based on different values of input parameters for the type reservoir model and/or other information. Training data for a machine learning model may be generated based on the multiple production simulations for the reservoir and/or other information. The machine learning model may be trained using the training data and/or other information. The trained machine learning model may provide prediction of transient production in the reservoir and may facilitate determination of transient inflow performance relationship for the reservoir. The trained machine learning model may be stored in a non-transitory storage medium.

A system for determining inflow performance relationship for a reservoir may include one or more electronic storage, one or more processors and/or other components. The electronic storage may store information relating to a reservoir, type reservoir model information, information relating to a type reservoir model, information relating to production simulations, information relating to training data, information relating to a machine learning model, information relating to training of the machine learning model, information relating to transient inflow performance relationship, production parameter scenario information, information relating to a scenario of production parameter, information relating to transient production prediction, and/or other information.

The processor(s) may be configured by machine-readable instructions. Executing the machine-readable instructions may cause the processor(s) to facilitate determining inflow performance relationship for a reservoir. The machine-readable instructions may include one or more computer program components. The computer program components may include one or more of a type reservoir component, a production simulation component, a training data component, a train component, a storage component, a scenario component, a prediction component, a transient IPR component, and/or other computer program components.

The type reservoir component may be configured to obtain type reservoir model information and/or other information. The type reservoir model information may define a type reservoir model for the reservoir. In some implementations, the type reservoir model information may be obtained based on history matching and/or other information.

The production simulation component may be configured to generate multiple production simulations for the reservoir. The multiple production simulations for the reservoir may be generated based on different values of input parameters for the type reservoir model and/or other information. In some implementations, the input parameters may include one or more of fracture geometry, flowing bottom hole pressure, number of fracture clusters, and/or other input parameters.

The training data component may be configured to generate training data for a machine learning model. The training data for the machine learning model may be generated based on the multiple production simulations for the reservoir and/or other information. In some implementations, the training data for the machine learning model may include pairings of corresponding values of the input parameters and values of production rate.

The train component may be configured to train the machine learning model. The machine learning model may be trained using the training data and/or other information. The trained machine learning model may provide prediction of transient production in the reservoir. The trained machine learning model may facilitate determination of transient inflow performance relationship for the reservoir. In some implementations, the machine learning model may include a recurrent neural network.

The storage component may be configured to store the trained machine learning model. The trained machine learning model may be stored in a non-transitory storage medium.

The scenario component may be configured to obtain production parameter scenario information and/or other information. The production parameter scenario information may define a scenario of production parameter for the reservoir. In some implementations, the scenario of production parameter for the reservoir may include a time series of flowing bottom hole pressure.

The prediction component may be configured to determine transient production prediction. The transient production prediction may be determined based on inputting the scenario of production parameter for the reservoir into the trained machine learning model and/or other information. In some implementations, output of the trained machine learning model may include multiple sets of average pressure, production rate, and/or absolute open flow of the reservoir at separate times. The multiple sets of the average pressure, the production rate, and/or the absolute open flow of the reservoir at separate times may include a first set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a first time and a second set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a second time.

The transient IPR component may be configured to determine the transient inflow performance relationship for the reservoir. The transient inflow performance relationship for the reservoir may be determined based on the transient production prediction and/or other information. In some implementations, the determination of the transient inflow performance relationship for the reservoir may include determination of separate inflow performance relationships for separate times. In some implementations, the determination of the transient inflow performance relationship for the reservoir may include determination of transient oil inflow performance relationship, transient gas condensate inflow performance relationship, or other transient inflow performance relationship.

These and other objects, features, and characteristics of the system and/or method disclosed herein, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example system for determining inflow performance relationship for a reservoir.

FIG. 2A illustrates an example method for determining inflow performance relationship for a reservoir.

FIG. 2B illustrates an example method for determining inflow performance relationship for a reservoir.

FIG. 3A illustrates example outflow performance curves and inflow performance curve.

FIG. 3B illustrates example changes in inflow performance curve.

FIG. 4 illustrates an example process for determining inflow performance relationship for a reservoir.

FIG. 5A illustrates an example inflow performance relationship curve for an oil reservoir.

FIG. 5B illustrates an example inflow performance relationship curve for a gas condensate reservoir.

FIG. 6A illustrates an example web-based graphical user interface.

FIG. 6B illustrates an example web-based graphical user interface.

FIG. 6C illustrates an example web-based graphical user interface.

DETAILED DESCRIPTION

The present disclosure relates to determining inflow performance relationship for a reservoir. A machine learning model is trained to facilitate determination of transient inflow performance relationship for a reservoir. A type reservoir model for the reservoir is developed and run multiple times with different input parameters to generate multiple production simulations for the reservoir. The input parameters and the results of the multiple production simulations for the reservoir are used to train a machine learning model. The trained machine learning model facilitates determination of transient inflow performance relationship for the reservoir by providing time-series prediction of average pressure, production rate, and absolute open flow of the reservoir.

The methods and systems of the present disclosure may be implemented by a system and/or in a system, such as a system 10 shown in FIG. 1 . The system 10 may include one or more of a processor 11, an interface 12 (e.g., bus, wireless interface), an electronic storage 13, a display 14, and/or other components. Type reservoir model information and/or other information may be obtained by the processor 11. The type reservoir model information may define a type reservoir model for the reservoir. Multiple production simulations for the reservoir may be generated by the processor 11 based on different values of input parameters for the type reservoir model and/or other information. Training data for a machine learning model may be generated by the processor 11 based on the multiple production simulations for the reservoir and/or other information. The machine learning model may be trained by the processor 11 using the training data and/or other information. The trained machine learning model may provide prediction of transient production in the reservoir and may facilitate determination of transient inflow performance relationship for the reservoir. The trained machine learning model may be stored by the processor 11 in a non-transitory storage medium.

The electronic storage 13 may be configured to include electronic storage medium that electronically stores information. The electronic storage 13 may store software algorithms, information determined by the processor 11, information received remotely, and/or other information that enables the system 10 to function properly. For example, the electronic storage 13 may store information relating to a reservoir, type reservoir model information, information relating to a type reservoir model, information relating to production simulations, information relating to training data, information relating to a machine learning model, information relating to training of the machine learning model, information relating to transient inflow performance relationship, production parameter scenario information, information relating to a scenario of production parameter, information relating to transient production prediction, and/or other information.

The display 14 may refer to an electronic device that provides visual presentation of information. The display 14 may include a color display and/or a non-color display. The display 14 may be configured to visually present information. The display 14 may present information using/within one or more graphical user interfaces. For example, the display 14 may present information relating to a reservoir, type reservoir model information, information relating to a type reservoir model, information relating to production simulations, information relating to training data, information relating to a machine learning model, information relating to training of the machine learning model, information relating to transient inflow performance relationship, production parameter scenario information, information relating to a scenario of production parameter, information relating to transient production prediction, and/or other information.

Inflow performance relationship (IPR) is a reservoir performance indicator that correlates flowing bottomhole pressure with production rate of a well. Inflow performance relationship may include a curve of production rate plotted against flowing bottomhole pressure for different types of wells (e.g., oil wells, water wells, gas wells). The shape of the curve may be influenced by the reservoir fluid composition, heavier of the fluid phases under flowing conditions, and/or other factors. FIG. 3A illustrates example outflow performance curves 302 and inflow performance curve 304. The combination of the outflow performance curves 302 and inflow performance curve 304 may be used in nodal analysis to determine performance of a well (e.g., in producing fluid).

Inflow performance relationship is a critical factor in performing well performance evaluation and production optimization in production engineering field. For example, inflow performance relationship may be used to improve activities of measuring, analyzing, modeling, and/or prioritizing actions to improve productivity. Inflow performance relationship may be used to improve production operations and business planning. Inflow performance relationship may be used in troubleshooting issues at a well. Inflow performance relationship may be used to design wells and artificial lifts. Other uses of inflow performance relationship are contemplated.

However, it may be difficult to obtain inflow performance relationship for a reservoir. For example, for shale and tight reservoir, the process of obtaining inflow performance relationship may be challenging and complex because the inflow performance relationship changes over time due to the reservoir complexity characterized by fractures and tight reservoir. For instance, if flowing bottomhole pressure decreases, drawdown (reservoir pressure minus bottomhole pressure) increases, resulting in more production rate. Inflow performance relationship that changes over time may be referred to as transient inflow performance relationship. For example, FIG. 3B illustrates example changes in inflow performance curve over time. In FIG. 3B, the inflow performance curve may change as production rate decreases over time. Well testing or reservoir simulations (e.g., fluid simulations) may be performed to obtain inflow performance relationship but may be uneconomical because they require considerable time and costs.

The present disclosure provides a technique to estimate inflow performance relationship of a reservoir (e.g., conventional reservoir, unconventional reservoir such as shale and tight reservoir) by applying a machine learning technique based on physics of reservoir behavior. The technique of the current disclosure enables inflow performance relationship of a reservoir to be estimated more efficiently. The technique of the current disclosure enables inflow performance relationship of a reservoir to be estimated with acceptable accuracy (e.g., within ±10˜20% accuracy) while consuming less time and costs.

The term “formation”, “subsurface formation”, “subterranean formation”, “subsurface volume of interest”, “subsurface region of interest”, and the like may be utilized interchangeably with the term “reservoir.”

In some implementations, an unconventional reservoir may have a permeability of less than 25 millidarcy (mD) (e.g., 20 mD or less, 15 mD or less, 10 mD or less, 5 mD or less, 1 mD or less, 0.5 mD or less, 0.1 mD or less, 0.05 mD or less, 0.01 mD or less, 0.005 mD or less, 0.001 mD or less, 0.0005 mD or less, 0.0001 mD or less, 0.00005 mD or less, 0.00001 mD or less, 0.000005 mD or less, 0.000001 mD or less, or less). In some implementations, a reservoir may have a permeability of at least 0.000001 mD (e.g., at least 0.000005 mD, at least 0.00001 mD, 0.00005 mD, at least 0.0001 mD, 0.0005 mD, 0.001 mD, at least 0.005 mD, at least 0.01 mD, at least 0.05 mD, at least 0.1 mD, at least 0.5 mD, at least 1 mD, at least 5 mD, at least 10 mD, at least 15 mD, or at least 20 mD). An unconventional reservoir may have a permeability ranging from any of the minimum values described above to any of the maximum values described above. For example, in some implementations, an unconventional reservoir may have a permeability of from 0.000001 mD to 25 mD (e.g., from 0.001 mD to 25 mD, from 0.001 mD to 10 mD, from 0.01 mD to 10 mD, from 0.1 mD to 10 mD, from 0.001 mD to 5 mD, from 0.01 mD to 5 mD, or from 0.1 mD to 5 mD).

FIG. 4 illustrates an example process 400 for determining inflow performance relationship for a reservoir. In the process 400, a type reservoir model 402 may be obtained. For example, the type reservoir model 402 may be developed and/or prepared for a specific reservoir through history-matching multiple wells. The type reservoir model 402 may be run multiple times. The type reservoir model 402 may be run for various potential scenarios with wide range of input parameters. The outputs of the modeling may be stored in a database 404. The use of the type reservoir model 402 for the specific reservoir may allow information for the database 404 to be generated quickly and at low costs. A machine learning model 406 (e.g., recurrent neural network) may be trained using the information stored in the database. The machine learning model 406 may be trained to serve as a proxy for time-intensive and costly well testing/reservoir simulation that are used to determine inflow performance relationship. The machine learning model 406 may be used to estimate transient inflow performance relation 408 for the specific reservoir.

Referring back to FIG. 1 , the processor 11 may be configured to provide information processing capabilities in the system 10. As such, the processor 11 may comprise one or more of a digital processor, an analog processor, a digital circuit designed to process information, a central processing unit, a graphics processing unit, a microcontroller, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. The processor 11 may be configured to execute one or more machine-readable instructions 100 to facilitate determining inflow performance relationship for a reservoir. The machine-readable instructions 100 may include one or more computer program components. The machine-readable instructions 100 may include one or more of a type reservoir component 102, a production simulation component 104, a training data component 106, a train component 108, a storage component 110, a scenario component 112, a prediction component 114, a transient IPR component 116, and/or other computer program components.

The type reservoir component 102 may be configured to obtain type reservoir model information and/or other information. The type reservoir model information may define a type reservoir model for a reservoir. A reservoir model may refer to a computer model (e.g., program, tool, script, function, process, algorithm) that simulates properties and/or behaviors of a reservoir. A reservoir model may be run to simulate properties and/or behaviors of the reservoir under different conditions. A reservoir model may utilize/incorporate physics of reservoir behavior to predict how a reservoir may respond to different conditions. For example, a reservoir model may be used to predict production rates in the reservoir for different operating conditions of wells. A type reservoir model may refer to a reservoir model that simulates properties and/or behaviors of a specific reservoir.

The type reservoir model information may define a type reservoir model for a reservoir by including information that defines one or more content, qualities, attributes, features, and/or other aspects of the type reservoir model for the reservoir. For example, the type reservoir model information may define a type reservoir model for a reservoir by including information that makes up the physics of the reservoir behavior and/or information that is used to determine the physics of the reservoir behavior. Other types of type reservoir model information are contemplated.

Obtaining type reservoir model information may include one or more of accessing, acquiring, analyzing, determining, developing, examining, identifying, loading, locating, opening, preparing, receiving, retrieving, reviewing, selecting, storing, and/or otherwise obtaining the type reservoir model information. The type reservoir component 102 may obtain type reservoir model information from one or more locations. For example, the type reservoir component 102 may obtain type reservoir model information from a storage location, such as the electronic storage 13, electronic storage of a device accessible via a network, and/or other locations. The type reservoir component 102 may obtain type reservoir model information from one or more hardware components (e.g., a computing device) and/or one or more software components (e.g., software running on a computing device). In some implementations, the type reservoir model information may be obtained from one or more users. For example, a user may interact with a computing device to input, upload, identify, and/or select the type reservoir model to be used, and the corresponding type reservoir model information may be obtained.

For example, obtaining type reservoir model information defining a type reservoir model for a reservoir may include developing the type reservoir model. Rather than developing individual models for different wells in the reservoir, the type reservoir model may be developed to represent multiple/all wells in the reservoir. The type reservoir model may be developed using information about performance of wells in the reservoir and/or properties of the reservoir. For example, information about production (e.g., production rates), well (e.g., well design), and/or fracture (e.g., fracture geometry) may be used to develop the type reservoir model. Information about properties (e.g., rock and fluid properties) within the well may be used to develop the type reservoir model. For example, information from the wells and/or properties of the reservoir (e.g., permeability, porosity, relative permeability) may be averaged to develop the type reservoir model.

In some implementations, the type reservoir model may be developed using representative wells. A representative well may refer to a well that is representative of other/multiple wells. Rather than utilizing information from all the wells in the reservoir, the information from the representative wells may be used to develop the type reservoir model.

In some implementations, the type reservoir model may include sub-models for different parts of the reservoir. For example, rather than developing a single type reservoir model for the entire reservoir, the reservoir may be split into multiple parts and different sub-models may be developed for different parts of the reservoir. For instance, different sub-models may be developed for different zones and/or layers of the reservoir. The reservoir may be divided into different parts based on reservoir properties. For instance, a part may be identified based on the part of the reservoir having similar properties (e.g., rock and/or fluid properties that do not deviate beyond a threshold value).

In some implementations, the type reservoir model information may be obtained based on history matching and/or other information. For example, the type reservoir model may be developed using history matching. In some implementations, multiple reservoir models may be constructed, and a reservoir model that best matches the desired properties of the reservoir may be selected for use as the type reservoir model. In some implementations, model parameters (e.g., reservoir/fracture parameters) of the type reservoir model may be varied until the type reservoir model matches the desired properties of the reservoir (e.g., production simulated by the type reservoir model matching historical production data).

The production simulation component 104 may be configured to generate multiple production simulations for the reservoir. Generating a production simulation for the reservoir may include running the type reservoir model to simulate production from the reservoir under a particular condition. Generating a production simulation for the reservoir may include running the type reservoir model using particular values of input parameter to obtain prediction of how much production may be obtained from the reservoir. Generating a production simulation for the reservoir may include running the type reservoir model to obtain information on how much production may be obtained. For example, generating a production simulation for the reservoir may include running the type reservoir model to obtain production rate (e.g., productivity index) for the reservoir.

The multiple production simulations for the reservoir may be generated based on different values of input parameters for the type reservoir model and/or other information. Input parameters for the type reservoir model may refer to parameters that are received by the type reservoir model and used to perform the simulation. The values of input parameters for the type reservoir model may be varied to simulate different scenarios of production (e.g., generate different productivity index based on different input parameter values). Wide variety of production scenarios (e.g., hundreds to thousands) may be simulated by using different values of input parameters for the type reservoir model.

In some implementations, the input parameters for the type reservoir model may include one or more of fracture geometry, flowing bottom hole pressure, number of fracture clusters, and/or other input parameters. For example, the fracture geometry, flowing bottom hole pressure, and/or number of fracture clusters may be varied for the type reservoir model to generate different production simulations for the reservoir. Other examples of input parameters for the type reservoir model include well length, well inner diameter, fracture half length, fracture height, fracture width, fracture conductivity, number of stages, and injection rates. In some implementations, one or more of the input parameters may include time series data. For example, the flowing bottom hole pressure for the type reservoir model may be input as time series data, with separate values of flowing bottom hole pressure being input for different times. Additional input parameters may be expanded and/or adopted as needed. Use of other types of input parameter is contemplated.

The training data component 106 may be configured to generate training data for a machine learning model. The training data for a machine learning model may refer to data that is used to train the machine learning model to perform a particular function. The training data for the machine learning model may refer to data that is used to train the machine learning model to serve as a proxy for time-intensive and costly well testing/reservoir simulation that are used to determine inflow performance relationship. The training data for the machine learning model may be generated based on the multiple production simulations for the reservoir and/or other information. The training data for the machine learning model may be generated to include inputs and/or outputs of the type reservoir in generating different production simulations for the reservoir. The training data for the machine learning model may be generated to include information derived from inputs and/or outputs of the type reservoir in generating different production simulations for the reservoir. The training data for the machine learning model may include pairing of input and output of the type reservoir in generating different production simulations for the reservoir. For example, the training data for the machine learning model may include pairings of corresponding values of the input parameters and values of production rate. Individual pairing may include the values of the input parameters used to generate the production simulation and the values of the production rate output by the type reservoir model. Other pairings of data are contemplated.

The train component 108 may be configured to train the machine learning model. The machine learning model may refer to a collection of connected units or nodes, a set of coefficients, a decision tree, and/or other structures. The machine learning model may be trained by the train component 108 using the training data and/or other information. Training the machine learning model may include facilitating learning by the machine learning model by processing examples through the machine learning model. A pairing of input and output of the type reservoir in the training data may be provided example of input and result, respectively. For example, values of the input parameters that are used by the type reservoir model may be provided as input while the production simulation generated by the type reservoir model may be provided as result. The machine learning model may adjust its weighted association, coefficients, decision parameters, and others to produce output that is similar to the result. For instance, the machine learning model may be trained to output results similar to reservoir simulation results and to serve as a proxy for running reservoir simulations.

In some implementations, the machine-learning model may include one or more neural networks. In some implementations, the machine learning model may include one or more recurrent neural networks. Use of the recurrent neural network may allow processing of time series data. The recurrent neural network may be a long short-term memory (LSTM) network and/or other type of recurrent neural network. Use of other types of machine learning model is contemplated.

The trained machine learning model may provide prediction of transient production in the reservoir. The trained machine learning model providing prediction of transient production in the reservoir may include the trained machine learning model outputting separate values of production rate in the reservoir at different times and/or outputting information from which separate values of production rate in the reservoir at different times may be determined.

The trained machine learning model may facilitate determination of transient inflow performance relationship for the reservoir. The trained machine learning model facilitating determination of transient inflow performance relationship for the reservoir may include the trained machine learning model providing information from which transient inflow performance relationship for the reservoir may be determined, the input and/or output of the trained machine learning model being presented on a display, the trained machine learning model enabling determination of the transient inflow performance relationship for the reservoir, the trained machine learning model making it easier to determine the transient inflow performance relationship for the reservoir, and/or the trained machine learning model otherwise facilitating determination of transient inflow performance relationship for the reservoir.

One or more of the outputs from the trained machine learning model may include time series data. For example, based on the flowing bottom hole pressure for the reservoir being input to the trained machine learning model as time series data, the production rate in the reservoir may be output by the trained machine learning model as time series data. Other output of the trained machine learning model (e.g., average pressure, absolute open flow of the reservoir) may be time series data.

The storage component 110 may be configured to store the trained machine learning model. The trained machine learning model may be stored in a non-transitory storage medium and/or other storage medium. For example, the storage component 110 may store the trained machine learning model/information defining the trained machine learning model in a storage location, such as the electronic storage 13, electronic storage of a device accessible via a network, and/or other locations. The trained machine learning model may be stored for use in determining transient production prediction. The trained machine learning model may be stored for retrieval/running when performing transient production prediction.

The scenario component 112 may be configured to obtain production parameter scenario information and/or other information. The production parameter scenario information may define a scenario of production parameter for the reservoir. A scenario of production parameters for the reservoir may refer to a particular set of production parameters for the reservoir. Production parameters for the reservoir may refer to input parameters that are used/contemplated to be used for production at the reservoir. A scenario of production parameters for the reservoirs may be defined by values of input parameters that are used/contemplated to be used for production at the reservoir. In some implementations, a scenario of production parameters for the reservoir may be defined by values of one or more of fracture geometry, flowing bottom hole pressure, number of fracture clusters, and/or other values of input parameters. Other example values of input parameters that may define a scenario of production parameters for the reservoir may include values of well length, well inner diameter, fracture half length, fracture height, fracture width, fracture conductivity, number of stages, and injection rates. In some implementations, a scenario of production parameters may include time series data. For example, a scenario of production parameter for a reservoir may include a time series of flowing bottom hole pressure (e.g., measured reservoir pressure as a function of time). Additional production parameters may be expanded and/or adopted as needed. Use of other types of production parameter is contemplated.

The production parameter scenario information may define a scenario of production parameter for a reservoir by including information that defines one or more content, qualities, attributes, features, and/or other aspects of the scenario of production parameter for the reservoir. For example, the production parameter scenario information may define a scenario of production parameter for a reservoir by including information that makes up the values of production parameters and/or information that is used to determine the values of production parameters. Other types of production parameter scenario information are contemplated.

Obtaining production parameter scenario information may include one or more of accessing, acquiring, analyzing, determining, developing, examining, identifying, loading, locating, opening, preparing, receiving, retrieving, reviewing, selecting, storing, and/or otherwise obtaining the production parameter scenario information. The scenario component 112 may obtain production parameter scenario information from one or more locations. For example, the scenario component 112 may obtain production parameter scenario information from a storage location, such as the electronic storage 13, electronic storage of a device accessible via a network, and/or other locations. The scenario component 112 may obtain production parameter scenario information from one or more hardware components (e.g., a computing device) and/or one or more software components (e.g., software running on a computing device). In some implementations, the production parameter scenario information may be obtained from one or more users. For example, a user may interact with a computing device to input, upload, identify, and/or select the scenario of production parameter for the reservoir to be used, and the corresponding production parameter scenario information may be obtained.

The prediction component 114 may be configured to determine transient production prediction. Determining transient production prediction may include ascertaining, approximating, calculating, establishing, estimating, finding, identifying, obtaining, performing, quantifying, and/or otherwise determining the transient production prediction. Transient production prediction may refer to prediction of production that changes over time. Determining transient production prediction may include determining predicted values of production rate (e.g., productivity index, oil production read) that changes over time. Determining transient production prediction may include determining separate predicted values of production rate for separate times.

The transient production prediction may be determined based on inputting the scenario of production parameter for the reservoir into the trained machine learning model and/or other information. In response to the scenario of production parameter for the reservoir being input into the trained machine learning model, the trained machine learning model may output the transient production prediction for the reservoir. The trained machine learning model may output the predicted values of production rate for the reservoir and/or information from which the predicted values of production rate for the reservoir may be determined. The trained machine learning model may output other values relating to production, such as average pressure (average reservoir pressure) and absolute open flow. For shale and tight reservoir, the changes in average pressure over time may represent changes in contribution of remaining energy of the reservoir to production over time.

The trained machine learning model may output separate sets of values for separate times. For example, the output of the trained machine learning model may include multiple sets of average pressure, production rate, and/or absolute open flow of the reservoir at different times. Individual sets of average pressure, production rate, and/or absolute open flow of the reservoir may correspond to the values of the average pressure, production rate, and/or absolute open flow of the reservoir at different times. For example, the trained machine learning model may output one set of average pressure, production rate, and/or absolute open flow of the reservoir for one time and another set of average pressure, production rate, and/or absolute open flow of the reservoir for another time. The changes in the values between different sets of output may be due to the changes in flowing bottomhole pressure and/or hydraulic fracture of the reservoir over time. The values of average pressure, production rate, and absolute open flow the reservoir at separate times may be used to generate separate time-series curves for the average pressure, production rate, and absolute open flow. For individual time points, a single inflow performance relationship of the reservoir may be determined.

The transient IPR component 116 may be configured to determine the transient inflow performance relationship for the reservoir. Determining the transient inflow performance relationship for the reservoir may include ascertaining, approximating, calculating, establishing, estimating, finding, identifying, obtaining, quantifying, and/or otherwise determining the transient inflow performance relationship for the reservoir. Transient inflow performance relationship for the reservoir may refer to inflow performance relationship for the reservoir that changes over time. The transient inflow performance relationship for the reservoir may be determined based on the transient production prediction and/or other information. The predicted values of production rate, along with values of average pressure and absolute open flow, may be used to determine the transient inflow performance relationship for the reservoir. The time series data from the transient production prediction may be used to determine the inflow performance relationship at different times. That is, the determination of the transient inflow performance relationship for the reservoir may include determination of separate inflow performance relationships for separate times.

In some implementations, the transient inflow performance relationship for the reservoir may be determined further based on knowledge and/or assumption about the shape/functional form of the inflow performance relationship curve. For example, the slope of the inflow performance relationship curve may be a function of the productivity index of the reservoir. The average pressure and the absolute open flow of the reservoir may define end points of the inflow performance relationship curve, and the shape/functional form of the inflow performance relationship curve may be used to generate the full inflow performance relationship curve.

In some implementations, the determination of the transient inflow performance relationship for the reservoir may include determination of transient oil inflow performance relationship, transient gas condensate inflow performance relationship, or other transient inflow performance relationship. Transient oil inflow performance relationship may refer to transient inflow performance relationship for an oil reservoir. Transient gas condensate inflow performance relationship may refer to transient inflow performance relationship for a gas condensate reservoir. Determination of transient inflow performance relationship for other types of reservoir is contemplated.

FIG. 5A illustrates an example inflow performance relationship curve 500 for an oil reservoir. The inflow performance relationship curve 500 for the oil reservoir may be generated based on the production prediction (e.g., production rate, average pressure, absolute open flow) for a time point output by the trained machine learning model. The average pressure (average reservoir pressure) for the time point may form the y-intercept of the inflow performance relationship curve 500. The absolute open flow for the time point may form the x-intercept of the inflow performance relationship curve 500. The productivity index may be calculated based on the production rate, and the slope of the inflow performance relationship curve 500 at the bubble point pressure (e.g., known, assumed and/or defined by the user) may be equal to inverse of the productivity index (1/PI). The known/assumed shape or functional form of the inflow performance relationship curve may be used to generate the inflow performance relationship curve 500 between the y-intercept and the x-intercept, with the inflow performance relationship curve 500 passing through the bubble point pressure with the slope equal to inverse of the productivity index. Separate inflow performance relationship curves may be generated for separate time points to generate the transient inflow performance relationship.

FIG. 5B illustrates an example inflow performance relationship curve 550 for a gas condensate reservoir. The inflow performance relationship curve 550 for the gas condensate reservoir may be generated based on the production prediction (e.g., production rate, average pressure, absolute open flow) for a time point output by the trained machine learning model. The average pressure (average reservoir pressure) for the time point may form the y-intercept of the inflow performance relationship curve 550. The absolute open flow for the time point may form the x-intercept of the inflow performance relationship curve 550. A known/assumed inflow performance relationship correlation with the average pressure and the absolute open flow may be used to fit the inflow performance relationship curve 550 between the y-intercept and the x-intercept. For example, a published IPR correlation with the average pressure and the absolute open flow may be used to fit the inflow performance relationship curve 550 between the y-intercept and the x-intercept.

FIGS. 6A, 6B, and 6C illustrate example web-based graphical user interfaces 610, 620, 630. The graphical user interfaces 610, 620, 630 shown in these figures may include standalone interfaces and/or may form parts of one or more other graphical user interfaces. For example, two or more of the graphical user interfaces may be part of the same graphical user interface. These graphical user interfaces are shown as examples, and other types of graphical user interfaces and other arrangements of graphical user interface elements are contemplated.

Referring to FIG. 6A, the graphical user interface 610 may facilitate user selection of a scenario of production parameter for a reservoir in determining transient inflow performance relationship. The graphical user interface 610 may include elements to enable user selection of reservoir, fracture geometry (fracture half length, fracture height, fracture conductivity), well information (e.g., number of clusters, well length), and flowing bottomhole pressure. The flowing bottomhole pressure may include time series data, such as defined based on exponential equation or a historical data of flowing bottomhole pressure measurements (e.g., contained in a tabular file). The graphical user interface 610 may provide visual representation of the selected flowing bottomhole pressure.

Referring to FIG. 6B, the graphical user interface 620 may provide visual representation of one or more inflow performance relationship curves. The inflow performance relationship curve(s) may be generated based on a scenario of production parameter for a reservoir, such as the scenario of production parameter selected by the user through the graphical user interface 610. The graphical user interface 620 may include elements to enable user selection of the time points (e.g., days) for which the inflow performance relationships are to be determined. The graphical user interface 620 may include elements to enable a user to download the inflow performance relationships.

Referring to FIG. 6C, the graphical user interface 630 may provide visual representation of data used to determine the inflow performance relationship for the reservoir. For example, the graphical user interface 630 may show the underlying data that was used to generate the inflow performance relationship curves shown in the graphical user interface 620. The graphical user interface 620 may include elements to enable user selection of the type of data (e.g., average reservoir pressure, production rate, productivity index, flowing bottomhole pressure) to be displayed. The data may be presented in a graph form, a tabular form, and/or other forms. For example, the graphical user interface 630 may present the average reservoir pressure using a curve. As another example, the production rate and/or the flowing bottom hole pressure may be presented in a tabular form.

Implementations of the disclosure may be made in hardware, firmware, software, or any suitable combination thereof. Aspects of the disclosure may be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). For example, a tangible computer-readable storage medium may include read-only memory, random access memory, magnetic disk storage media, optical storage media, flash memory devices, and others, and a machine-readable transmission media may include forms of propagated signals, such as carrier waves, infrared signals, digital signals, and others. Firmware, software, routines, or instructions may be described herein in terms of specific exemplary aspects and implementations of the disclosure, and performing certain actions.

In some implementations, some or all of the functionalities attributed herein to the system 10 may be provided by external resources not included in the system 10. External resources may include hosts/sources of information, computing, and/or processing and/or other providers of information, computing, and/or processing outside of the system 10.

Although the processor 11, the electronic storage 13, and the display 14 are shown to be connected to the interface 12 in FIG. 1 , any communication medium may be used to facilitate interaction between any components of the system 10. One or more components of the system 10 may communicate with each other through hard-wired communication, wireless communication, or both. For example, one or more components of the system 10 may communicate with each other through a network. For example, the processor 11 may wirelessly communicate with the electronic storage 13. By way of non-limiting example, wireless communication may include one or more of radio communication, Bluetooth communication, Wi-Fi communication, cellular communication, infrared communication, or other wireless communication. Other types of communications are contemplated by the present disclosure.

Although the processor 11, the electronic storage 13, and the display 14 are shown in FIG. 1 as single entities, this is for illustrative purposes only. One or more of the components of the system 10 may be contained within a single device or across multiple devices. For instance, the processor 11 may comprise a plurality of processing units. These processing units may be physically located within the same device, or the processor 11 may represent processing functionality of a plurality of devices operating in coordination. The processor 11 may be separate from and/or be part of one or more components of the system 10. The processor 11 may be configured to execute one or more components by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities on the processor 11.

It should be appreciated that although computer program components are illustrated in FIG. 1 as being co-located within a single processing unit, one or more of computer program components may be located remotely from the other computer program components. While computer program components are described as performing or being configured to perform operations, computer program components may comprise instructions which may program processor 11 and/or system 10 to perform the operation.

While computer program components are described herein as being implemented via processor 11 through machine-readable instructions 100, this is merely for ease of reference and is not meant to be limiting. In some implementations, one or more functions of computer program components described herein may be implemented via hardware (e.g., dedicated chip, field-programmable gate array) rather than software. One or more functions of computer program components described herein may be software-implemented, hardware-implemented, or software and hardware-implemented.

The description of the functionality provided by the different computer program components described herein is for illustrative purposes, and is not intended to be limiting, as any of computer program components may provide more or less functionality than is described. For example, one or more of computer program components may be eliminated, and some or all of its functionality may be provided by other computer program components. As another example, processor 11 may be configured to execute one or more additional computer program components that may perform some or all of the functionality attributed to one or more of computer program components described herein.

The electronic storage media of the electronic storage 13 may be provided integrally (i.e., substantially non-removable) with one or more components of the system 10 and/or as removable storage that is connectable to one or more components of the system 10 via, for example, a port (e.g., a USB port, a Firewire port, etc.) or a drive (e.g., a disk drive, etc.). The electronic storage 13 may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EPROM, EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. The electronic storage 13 may be a separate component within the system 10, or the electronic storage 13 may be provided integrally with one or more other components of the system 10 (e.g., the processor 11). Although the electronic storage 13 is shown in FIG. 1 as a single entity, this is for illustrative purposes only. In some implementations, the electronic storage 13 may comprise a plurality of storage units. These storage units may be physically located within the same device, or the electronic storage 13 may represent storage functionality of a plurality of devices operating in coordination.

FIG. 2A and FIG. 2B illustrate methods 200, 250 for determining inflow performance relationship for a reservoir. The operations of methods 200, 250 presented below are intended to be illustrative. In some implementations, methods 200, 250 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. In some implementations, two or more of the operations may occur substantially simultaneously.

In some implementations, methods 200, 250 may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, a central processing unit, a graphics processing unit, a microcontroller, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information). The one or more processing devices may include one or more devices executing some or all of the operations of methods 200, 250 in response to instructions stored electronically on one or more electronic storage media. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of methods 200, 250.

Referring to FIG. 2A and method 200, at operation 202, type reservoir model information and/or other information may be obtained. The type reservoir model information may define a type reservoir model for the reservoir. In some implementation, operation 202 may be performed by a processor component the same as or similar to the type reservoir component 102 (Shown in FIG. 1 and described herein).

At operation 204, multiple production simulations for the reservoir may be generated based on different values of input parameters for the type reservoir model and/or other information. In some implementation, operation 204 may be performed by a processor component the same as or similar to the production simulation component 104 (Shown in FIG. 1 and described herein).

At operation 206, training data for a machine learning model may be generated based on the multiple production simulations for the reservoir and/or other information. In some implementation, operation 206 may be performed by a processor component the same as or similar to the training data component 106 (Shown in FIG. 1 and described herein).

At operation 208, the machine learning model may be trained using the training data and/or other information. The trained machine learning model may provide prediction of transient production in the reservoir and may facilitate determination of transient inflow performance relationship for the reservoir. In some implementation, operation 208 may be performed by a processor component the same as or similar to the train component 108 (Shown in FIG. 1 and described herein).

At operation 210, the trained machine learning model may be stored in a non-transitory storage medium. In some implementation, operation 210 may be performed by a processor component the same as or similar to the storage component 110 (Shown in FIG. 1 and described herein).

Referring to FIG. 2B and method 250, at operation 252, production parameter scenario information and/or other information may be obtained. The production parameter scenario information may define a scenario of production parameter for the reservoir. In some implementation, operation 252 may be performed by a processor component the same as or similar to the scenario component 112 (Shown in FIG. 1 and described herein).

At operation 254, transient production prediction may be determined based on inputting the scenario of production parameter for the reservoir into the trained machine learning model and/or other information. In some implementation, operation 254 may be performed by a processor component the same as or similar to the prediction component 114 (Shown in FIG. 1 and described herein).

At operation 256, the transient inflow performance relationship for the reservoir may be determined based on the transient production prediction and/or other information. In some implementation, operation 256 may be performed by a processor component the same as or similar to the transient IPR component 116 (Shown in FIG. 1 and described herein).

Although the system(s) and/or method(s) of this disclosure have been described in detail for the purpose of illustration based on what is currently considered to be the most practical and preferred implementations, it is to be understood that such detail is solely for that purpose and that the disclosure is not limited to the disclosed implementations, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present disclosure contemplates that, to the extent possible, one or more features of any implementation can be combined with one or more features of any other implementation. 

What is claimed is:
 1. A system for determining inflow performance relationship for a reservoir, the system comprising: one or more physical processors configured by machine-readable instructions to: obtain type reservoir model information, the type reservoir model information defining a type reservoir model for the reservoir; generate multiple production simulations for the reservoir based on different values of input parameters for the type reservoir model; generate training data for a machine learning model based on the multiple production simulations for the reservoir; train the machine learning model using the training data, wherein the trained machine learning model provides prediction of transient production in the reservoir and facilitates determination of transient inflow performance relationship for the reservoir; and store the trained machine learning model in a non-transitory storage medium.
 2. The system of claim 1, wherein the one or more physical processors are further configured by the machine-readable instructions to: obtain production parameter scenario information, the production parameter scenario information defining a scenario of production parameter for the reservoir; determine transient production prediction based on inputting the scenario of production parameter for the reservoir into the trained machine learning model; and determine the transient inflow performance relationship for the reservoir based on the transient production prediction.
 3. The system of claim 2, wherein the scenario of production parameter for the reservoir includes a time series of flowing bottom hole pressure.
 4. The system of claim 2, wherein the determination of the transient inflow performance relationship for the reservoir includes determination of separate inflow performance relationships for separate times.
 5. The system of claim 4, wherein the determination of the transient inflow performance relationship for the reservoir includes determination of transient oil inflow performance relationship or transient gas condensate inflow performance relationship.
 6. The system of claim 1, wherein the machine learning model includes a recurrent neural network.
 7. The system of claim 1, wherein the training data for the machine learning model includes pairings of corresponding values of the input parameters and values of production rate.
 8. The system of claim 1, wherein the input parameters include one or more of fracture geometry, flowing bottom hole pressure, and number of fracture clusters.
 9. The system of claim 1, wherein output of the trained machine learning model includes multiple sets of average pressure, production rate, and/or absolute open flow of the reservoir at different times, wherein the multiple sets of the average pressure, the production rate, and/or the absolute open flow of the reservoir at different times includes a first set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a first time and a second set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a second time.
 10. The system of claim 1, wherein the type reservoir model information is obtained based on history matching.
 11. A method for determining inflow performance relationship for a reservoir, the method comprising: obtaining type reservoir model information, the type reservoir model information defining a type reservoir model for the reservoir; generating multiple production simulations for the reservoir based on different values of input parameters for the type reservoir model; generating training data for a machine learning model based on the multiple production simulations for the reservoir; training the machine learning model using the training data, wherein the trained machine learning model provides prediction of transient production in the reservoir and facilitates determination of transient inflow performance relationship for the reservoir; and storing the trained machine learning model in a non-transitory storage medium.
 12. The method of claim 11, further comprising: obtaining production parameter scenario information, the production parameter scenario information defining a scenario of production parameter for the reservoir; determining transient production prediction based on inputting the scenario of production parameter for the reservoir into the trained machine learning model; and determining the transient inflow performance relationship for the reservoir based on the transient production prediction.
 13. The method of claim 12, wherein the scenario of production parameter for the reservoir includes a time series of flowing bottom hole pressure.
 14. The method of claim 12, wherein determining the transient inflow performance relationship for the reservoir includes determining separate inflow performance relationships for separate times.
 15. The method of claim 14, wherein determining the transient inflow performance relationship for the reservoir includes determining transient oil inflow performance relationship or transient gas condensate inflow performance relationship.
 16. The method of claim 11, wherein the machine learning model includes a recurrent neural network.
 17. The method of claim 11, wherein the training data for the machine learning model includes pairings of corresponding values of the input parameters and values of production rate.
 18. The method of claim 11, wherein the input parameters include one or more of fracture geometry, flowing bottom hole pressure, and number of fracture clusters.
 19. The method of claim 11, wherein output of the trained machine learning model includes multiple sets of average pressure, production rate, and/or absolute open flow of the reservoir at different times, wherein the multiple sets of the average pressure, the production rate, and/or the absolute open flow of the reservoir at different times includes a first set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a first time and a second set of the average pressure, the production rate, and/or the absolute open flow of the reservoir at a second time.
 20. The method of claim 11, wherein the type reservoir model information is obtained based on history matching.
 21. A method for determining inflow performance relationship for a reservoir, the method comprising: obtaining production parameter scenario information, the production parameter scenario information defining a scenario of production parameter for the reservoir; obtaining a trained machine learning model, the trained machine learning model providing prediction of transient production in the reservoir and facilitating determination of transient inflow performance relationship for the reservoir, wherein training data for the trained machine learning model is generated based on multiple production simulations for the reservoir, the multiple production simulations for the reservoir generated based on different values of input parameters for a type reservoir model for the reservoir; determining transient production prediction based on inputting the scenario of production parameter for the reservoir into the trained machine learning model; and determining the transient inflow performance relationship for the reservoir based on the transient production prediction. 